from aip import AipSpeech
import pygame

def baidu_tts(text):
    # 百度语音合成配置
    APP_ID = '116127254'
    API_KEY = 'VVXIeh9jlVN3FbD9PyOgCsOe'
    SECRET_KEY = 'MrW8rZCv1eY83v8jGHZkD0TbWUwbwZ2N'

    # 初始化客户端
    client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

    # 合成参数
    params = {
        'vol': 5,    # 音量
        'spd': 4,    # 语速
        'pit': 7,    # 音调
        'per': 4     # 发音人
    }

    # 调用语音合成
    result = client.synthesis(text, 'zh', 1, params)

    # 保存音频文件
    if not isinstance(result, dict):
        with open('output.mp3', 'wb') as f:
            f.write(result)
        print("语音合成成功，已保存为 output.mp3")
    else:
        print("语音合成失败，错误信息：", result)
    '''pygame.init()  # 初始化pygame
    pygame.mixer.init()
    try:
        sound = pygame.mixer.Sound("output.mp3") # 加载声音文件
        sound.play()  # 播放声音
        print("正在播放声音...")
        # 等待声音播放完成
        while pygame.mixer.get_busy():
            pygame.time.delay(100)  # 每隔100毫秒检查一次
    except FileNotFoundError:
        print('语音未合成')
    except pygame.error as e:
        print("音频错误:", e)'''
    #pygame.mixer.quit()
    #pygame.quit()
    